/*
 * @Author: 0x9DEFA478
 * @Date: 2023-02-24 19:01:20
 * @LastEditTime: 2023-02-24 20:36:19
 * @LastEditors: 0x9DEFA478
 * @Description: 
 * QQ:2652450237
 * ============================================================================================================================================
 * 
 * 
 * 
 *                                                                                               ************      ****************************
 *                                                                                             ************      ****************************  
 *                                                                                           ************      ****************************    
 *                                                                                         ************      ****************************      
 *                                                                                       ************      ************                        
 *                                                                                     ************      ************                          
 *                                                                                   ************      ************                            
 *                                                                                 ************      ************                              
 *                                                                               ************      ************                                
 *                                                                             ************      ************                                  
 *                                                                           ************      ************                                    
 *                                                                         ************      ************                                      
 *                                                                       ************      ************                                        
 *                                                                     ************      ************                                          
 *                                                                   ************      ************                                            
 *                                                                 ************      ************                                              
 *                                                               ************      ************                                                
 *                                                             ************      ************                                                  
 *                                                           ************      ************                                                    
 *                                                         ************      ************                                                      
 *                                                       ************      ************                                                        
 *                                                     ************      ************                                                          
 *                                                   ************      ************                                                            
 *                                                 ************      ************                                                              
 *                                               ************      ************                                                                
 *                                             ************      ************                                                                  
 *                                           ************      ************                                                                    
 *                                         ************      ************                                                                      
 *                                       ************      ************                                                                        
 *                                     ************      ************                                                                          
 *                                   ************      ************                                                                            
 *                                 ************      ************                                                                              
 *                               ************      ************                                                                                
 *                             ************      ************                                                                                  
 *                           ************      ************                                                                                    
 *                         ************      ************                                                                                      
 *       ****************************      ************                                                                                        
 *     ****************************      ************                                                                                          
 *   ****************************      ************                                                                                            
 * ****************************      ************                                                                                              
 * 
 * 
 * 
 * ============================================================================================================================================
 * 
 */ 
#ifndef __VAction_H_
#define __VAction_H_
#include <QMenu>




class VAction:public QAction{
    Q_OBJECT
  public:
    explicit VAction(QObject* parent=nullptr);
    explicit VAction(const QString& text,QObject* parent=nullptr);
    explicit VAction(const QIcon& icon,const QString& text,QObject* parent=nullptr);

    ~VAction();

    void setV(void* v){
      this->v=v;
    }

    void* V()const{
      return v;
    }

  signals:

    void changed(void* v);
    void enabledChanged(void* v,bool enabled);
    void checkableChanged(void* v,bool checkable);
    void visibleChanged(void* v);
    void triggered(void* v,bool checked = false);
    void hovered(void* v);
    void toggled(void* v,bool);

  private slots:
    void changed();
    void enabledChanged(bool enabled);
    void checkableChanged(bool checkable);
    void visibleChanged();
    void triggered(bool checked);
    void hovered();
    void toggled(bool);


  private:
    void* v;

    void eventConnect();


};




#endif //__VAction_H_
